草庐IT

Java MVC - 感觉我不明白

全部标签

关于服务限流这回事,总算整明白了

​前言随着现在微服务、分布式系统的发展,各个服务之间的相互调用越来越复杂。为了保证自身服务的稳定性与高可用,当面对超过自身服务能力的请求调用时,要做一定的限流措施。如同五一、国庆期间的旅游出行、景区爆满,游客限流。我们的服务面对诸如秒杀、大促、618、双十一以及可能的恶意攻击、爬虫等高并发、大流量的场景也需要做服务限流。对超出服务处理能力之外的请求进行拦截,对访问服务的流量进行限制,这就是服务限流。接下来我们就好好谈谈服务限流这回事儿。两种限流方式常见的限流方式可以分为两类:基于请求限流和基于资源限流。基于请求限流基于请求限流指从外部访问的请求角度考虑限流,常见的方式有两种。第一种是限制总量,

一次性带你搞明白面试必问题,谈谈你对ES的理解

​有粉丝在评论区留言说,让我拍一期关于ES的视频。今天,我给大家分享一下我对ES的理解。1、ES是什么ES全称是ElasticSearch,它是一个建立在全文搜索引擎库Lucene基础上的开源搜索和分析引擎。ES它本身具有分布式存储、检索速度快的特性。所以,我们经常会用它来实现全文检索的功能。Elastic官网对ES的定义已经不再是ElasticSearch这一个组件,而是指ElasticStack生态。而ElasticStack主要包括ElasticSearch、Logstash、Kibana,这三个经典组合也称之为ELK。ElasticSearch主要用来做数据存储、Logstash主要用

一次性带你搞明白面试必问题,谈谈你对ES的理解

​有粉丝在评论区留言说,让我拍一期关于ES的视频。今天,我给大家分享一下我对ES的理解。1、ES是什么ES全称是ElasticSearch,它是一个建立在全文搜索引擎库Lucene基础上的开源搜索和分析引擎。ES它本身具有分布式存储、检索速度快的特性。所以,我们经常会用它来实现全文检索的功能。Elastic官网对ES的定义已经不再是ElasticSearch这一个组件,而是指ElasticStack生态。而ElasticStack主要包括ElasticSearch、Logstash、Kibana,这三个经典组合也称之为ELK。ElasticSearch主要用来做数据存储、Logstash主要用

一文彻底弄明白Golang获取各种路径问题

在日常开发中,经常会遇到在程序中获取路径的问题。相信很多同学被这个问题搞得头痛不已,可能也没有深入思考过这个问题,在网上搜到相关代码就稀里糊涂得使用了,也没有在不同的场景下多试几次,结果上线后就出现问题。其实获取路径问题总结下来有如下几种:获取二进制文件所在绝对路径;获取执行二进制文件的绝对路径;获取执行的代码文件所在的绝对路径。其实获取路径问题不仅仅在Golang编程中会遇到,应该说不管使用什么编程语言,这些问题都会遇到,接下来对这几种路径的获取方式会使用Golang来讲解。获取二进制文件所在绝对路径就是获取程序编译后的二进制文件所在的路径,假如二进制文件放在了/app/bin/下面了,那么

一文彻底弄明白Golang获取各种路径问题

在日常开发中,经常会遇到在程序中获取路径的问题。相信很多同学被这个问题搞得头痛不已,可能也没有深入思考过这个问题,在网上搜到相关代码就稀里糊涂得使用了,也没有在不同的场景下多试几次,结果上线后就出现问题。其实获取路径问题总结下来有如下几种:获取二进制文件所在绝对路径;获取执行二进制文件的绝对路径;获取执行的代码文件所在的绝对路径。其实获取路径问题不仅仅在Golang编程中会遇到,应该说不管使用什么编程语言,这些问题都会遇到,接下来对这几种路径的获取方式会使用Golang来讲解。获取二进制文件所在绝对路径就是获取程序编译后的二进制文件所在的路径,假如二进制文件放在了/app/bin/下面了,那么

弄明白OpenCV中的CvType各种参数意义以及相关方法

1.前言本篇内容基于java环境下,介绍OpenCV4.6.0v中创建Mat对象时传递的CvType参数。如果你不太能理解CvType.CV_8UCX,CvType.CV_8SCX,CvType.CV_16UCX,CvType.CV_16SCX等等参数的作用和意义。那么,这篇文章一文弄明白OpenCVMat中通道channels的作用可以帮你解惑。以下内容基于OpenCVSDK4.6.0v2.CvType这个类型主要是用来定义Mat中的数据类型的。常见使用场景就是在创建Mat的时候,进行定义。那么CvType这个类型会定义哪些参数呢?很简单它决定了Mat中的图片数据的两个基本指标:通道chan

弄明白OpenCV中的CvType各种参数意义以及相关方法

1.前言本篇内容基于java环境下,介绍OpenCV4.6.0v中创建Mat对象时传递的CvType参数。如果你不太能理解CvType.CV_8UCX,CvType.CV_8SCX,CvType.CV_16UCX,CvType.CV_16SCX等等参数的作用和意义。那么,这篇文章一文弄明白OpenCVMat中通道channels的作用可以帮你解惑。以下内容基于OpenCVSDK4.6.0v2.CvType这个类型主要是用来定义Mat中的数据类型的。常见使用场景就是在创建Mat的时候,进行定义。那么CvType这个类型会定义哪些参数呢?很简单它决定了Mat中的图片数据的两个基本指标:通道chan

什么是Aptos?你明白了吗?

Meta,前身为Facebook,几乎进入了区块链游戏。在马克扎克伯格放弃该项目后,其开发人员重新利用剩下的内容并创建了他们自己的区块链:Aptos。本文解释了它是什么、它是如何工作的,以及为什么很多人关心它的结构方式。Aptos是如何诞生的当Meta在2019年涉足区块链游戏时,它创建了Libra,这是一个支付项目,创建了一种与世界几种主要货币储备挂钩的货币。Libra非常不受欢迎,因为Facebook邀请了一些非常大的公司,比如Uber、Visa和Mastercard。他们将控制支持该货币的储备比率。Libra不完全是一种加密货币,也不在区块链上运行——但它足够接近人们认为Facebook

什么是Aptos?你明白了吗?

Meta,前身为Facebook,几乎进入了区块链游戏。在马克扎克伯格放弃该项目后,其开发人员重新利用剩下的内容并创建了他们自己的区块链:Aptos。本文解释了它是什么、它是如何工作的,以及为什么很多人关心它的结构方式。Aptos是如何诞生的当Meta在2019年涉足区块链游戏时,它创建了Libra,这是一个支付项目,创建了一种与世界几种主要货币储备挂钩的货币。Libra非常不受欢迎,因为Facebook邀请了一些非常大的公司,比如Uber、Visa和Mastercard。他们将控制支持该货币的储备比率。Libra不完全是一种加密货币,也不在区块链上运行——但它足够接近人们认为Facebook

聊聊动态基线预警,你明白了吗?

基线告警是目前大部分数据库监控软件的最重要的功能之一,可以说,基线告警是运维人员的眼睛和耳朵,不过搞运维的人都为这个眼镜耳朵伤透了脑筋,甚至很多人都被铺天盖地的无效告警伤害过。基线告警虽然实现起来很简单,也一定是有用的,不过每个系统的运行特性都不同,因此基线到底设置成多少呢是个令人头痛的事情。IO延时的告警阈值设置为50毫秒还是20毫秒呢?如果设置为20毫秒,那么经常出告警,但是系统也没啥问题。如果设置为50毫秒,有时候并发量高得时候,30多毫秒系统就出大问题了,甚至有时候IO延时50毫秒了还没问题,但是有时候才30多毫秒,系统就挂了。另外一种情况是,我们可能运维了数十个甚至数百个大大小小的数